// The Vue build version to load with the `import` command
// (runtime-only or standalone) has been set in webpack.base.conf with an alias.
// import "@/plugin/switchToMobile.js";
import Vue from "vue";
import App from "./App";
import router from "./router";
import "babel-polyfill";
import store from "./store";
import "mockjs";

// 引入全局样式
import "@/assets/css/reset.css";
import "@/assets/css/xui/xui.css";
import "@/assets/css/base.less";
import "@/assets/css/main.less";
// import "@/assets/css/social-share/css/share.min.css";
import "@/assets/social-share/css/share.min.css";

// 引入项目使用的插件
import "@/plugin/calendar-i18n";
import "@/plugin/axios";
import "@/plugin/vue-awsome-swiper";
import "@/plugin/elementUI";
import "@/plugin/vue-preview";
import "@/plugin/vue-truncate-filter";
import "@/plugin/vue-croppa";
import "@/plugin/share";

function isIE() {
  var userAgent = navigator.userAgent; //取得浏览器的userAgent字符串
  var isIE =
    userAgent.indexOf("compatible") > -1 && userAgent.indexOf("MSIE") > -1; //判断是否IE<11浏览器
  var isEdge = userAgent.indexOf("Edge") > -1 && !isIE; //判断是否IE的Edge浏览器
  var isIE11 =
    userAgent.indexOf("Trident") > -1 && userAgent.indexOf("rv:11.0") > -1;
  if (isIE) {
    var reIE = new RegExp("MSIE (\\d+\\.\\d+);");
    reIE.test(userAgent);
    var fIEVersion = parseFloat(RegExp["$1"]);
    if (fIEVersion == 7) {
      return 7;
    } else if (fIEVersion == 8) {
      return 8;
    } else if (fIEVersion == 9) {
      return 9;
    } else if (fIEVersion == 10) {
      return 10;
    } else {
      return 6; //IE版本<=7
    }
  } else if (isEdge) {
    return "edge"; //edge
  } else if (isIE11) {
    return 11; //IE11
  } else {
    return false; //不是ie浏览器
  }
}

if (isIE() && window.HTMLElement) {
  if (
    Object.getOwnPropertyNames(HTMLElement.prototype).indexOf("dataset") === -1
  ) {
    Object.defineProperty(HTMLElement.prototype, "dataset", {
      get: function() {
        let attributes = this.attributes;
        let name = [],
          value = [];
        let obj = {};
        for (let i = 0; i < attributes.length; i++) {
          if (attributes[i].nodeName.slice(0, 5) == "data-") {
            name.push(attributes[i].nodeName.slice(5));
            value.push(attributes[i].nodeValue);
          }
        }
        for (let j = 0; j < name.length; j++) {
          obj[name[j]] = value[j];
        }
        return obj;
      }
    });
  }
}

Vue.config.productionTip = false;

/* eslint-disable no-new */
new Vue({
  el: "#app",
  router,
  store,
  components: { App },
  template: "<App/>"
});
